-
Notifications
You must be signed in to change notification settings - Fork 17
[AE-782] Build dap collector job for incrementality experiments #387
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
mashalifshin
wants to merge
52
commits into
main
Choose a base branch
from
ae-782-build-dap-collector-job
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
gleonard-m
reviewed
Aug 20, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/constants.py
Outdated
Show resolved
Hide resolved
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/helpers.py
Outdated
Show resolved
Hide resolved
mashalifshin
commented
Aug 21, 2025
ba47bdf
to
65ef418
Compare
6c6a067
to
50591b2
Compare
gleonard-m
reviewed
Sep 3, 2025
gleonard-m
reviewed
Sep 3, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/helpers.py
Outdated
Show resolved
Hide resolved
gleonard-m
reviewed
Sep 3, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/helpers.py
Show resolved
Hide resolved
gleonard-m
reviewed
Sep 3, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/constants.py
Outdated
Show resolved
Hide resolved
gleonard-m
reviewed
Sep 3, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/main.py
Outdated
Show resolved
Hide resolved
gleonard-m
reviewed
Sep 3, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/models.py
Outdated
Show resolved
Hide resolved
gleonard-m
reviewed
Sep 3, 2025
gleonard-m
reviewed
Sep 3, 2025
mashalifshin
commented
Sep 4, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/main.py
Show resolved
Hide resolved
2f54368
to
63053fc
Compare
gleonard-m
reviewed
Sep 23, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/helpers.py
Outdated
Show resolved
Hide resolved
38a4e04
to
8cb20c8
Compare
gleonard-m
reviewed
Sep 26, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/helpers.py
Outdated
Show resolved
Hide resolved
gleonard-m
reviewed
Sep 26, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/main.py
Outdated
Show resolved
Hide resolved
gleonard-m
reviewed
Sep 26, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/models.py
Outdated
Show resolved
Hide resolved
mashalifshin
commented
Sep 26, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/main.py
Outdated
Show resolved
Hide resolved
gleonard-m
reviewed
Sep 29, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/main.py
Outdated
Show resolved
Hide resolved
gleonard-m
reviewed
Oct 3, 2025
gleonard-m
reviewed
Oct 3, 2025
gleonard-m
reviewed
Oct 3, 2025
gleonard-m
reviewed
Oct 3, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/helpers.py
Outdated
Show resolved
Hide resolved
gleonard-m
reviewed
Oct 3, 2025
gleonard-m
reviewed
Oct 3, 2025
gleonard-m
reviewed
Oct 3, 2025
gleonard-m
reviewed
Oct 3, 2025
80f87f4
to
cbd7aca
Compare
… test_mocks, where experiment is instantiated Co-authored-by: Chris Gramberg <[email protected]> Co-authored-by: Luc Lisi <[email protected]>
…and fix edge case in batch interval logic
gleonard-m
reviewed
Oct 8, 2025
jobs/ads-incrementality-dap-collector/tests/test_batch_interval_logic.py
Outdated
Show resolved
Hide resolved
gleonard-m
reviewed
Oct 8, 2025
Comment on lines
5
to
12
Incrementality is a way to measure the effectiveness of our ads in a general, agreggated, privacy-preserving way -- | ||
without knowing anything about specific users. | ||
|
||
Incrementality works by dividing clients into various Nimbus experiment branches that vary how/whether an ad is shown. | ||
Separately, a [DAP](https://docs.divviup.org/) task is configured to store the metrics for each experiment branch in a | ||
different DAP bucket. | ||
|
||
Firefox is instrumented with [DAP telemetry functionality](https://github.com/mozilla-firefox/firefox/tree/main/toolkit/components/telemetry/dap), which allows it to send metrics and reports into the correct DAP buckets as configured in the experiment. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remove the details of the experiment configuration.
gleonard-m
reviewed
Oct 8, 2025
jobs/ads-incrementality-dap-collector/ads_incrementality_dap_collector/models.py
Outdated
Show resolved
Hide resolved
gleonard-m
approved these changes
Oct 9, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem Statement:
Currently, we are running incrementality experiments on FFHNT, measuring whether our Tiles are effective by seeing if they give a lift to organic visits, or to checkouts, to the tile advertiser. We're doing this in a private, anonymized manner, by sending the experiment results to DAP. However, we have no way to collect those results from DAP in an automated way and bring them into our usual data pipeline, so those results are currently being manually collected by an engineer.
Solution:
Create a
docker-etl
job that can go out to Nimbus and find out how to collect the results for each experiment branch, go out and collect those results from DAP, and finally write those results into BQ.Checklist for reviewer:
referenced, the pull request should include the bug number in the title)
.circleci/config.yml
) will cause environment variables (particularlycredentials) to be exposed in test logs
telemetry-airflow
responsibly.